package SecondQuestion;

/**
 * 编程获取两个指定字符串中的最大相同子串。
 * @author cyt
 * @date 2020/6/14
 */
public class SecondQuestion {
    public static String findSame(String s1, String s2){
        //找出长和短的Stirng
        String longer = s1.length() > s2.length() ? s1 : s2;
        String shorter = s1.length() <= s2.length() ? s1 : s2;

        //找出两个String的最大相同字符串
        //一次减少shorter的字符数来获取其子字符串，然后看longer是否包含这个子字符串
        for(int i = 0; i <= shorter.length() - 1; i++){
            //shorter的子字符串的开始位置
            for(int start = 0; start <= i; start++){
                //shorter的子字符转
                String substring = shorter.substring(start, start + shorter.length() - 1 - i);
                //若longer包含这个子字符串，就说明这是两个字符串中最大的共同字符串
                if(longer.contains(substring)){
                    return substring;
                }
            }
        }

        return "";



    }
}
